import java.io.File;
import java.io.PrintWriter;
import java.util.Scanner;


public abstract class Appointment {
	protected String description;
	protected Date date;
	protected int time;

	public Appointment(){
	  date = new Date();
		
	}
	public Appointment(String string,int timeVar, Date dateVar){
		description = string;
		time = timeVar;
		date = dateVar;
	}
	
	public Date getDate() {
		return date;
	}
	public void setDate(Date date) {
		this.date = date;
	}
	public String getDescription(){
		return description; 
	}
	
	public int getTime(){
		return time;
	}
	
	public void setDescription(String string){
		description = string;
	}
	
	public void setTime(int y){
		time = y;
	}
	
	public abstract boolean occursOn(int year, String month, int day,String weekDayVar);
	public abstract void displayAppointment();
	public abstract void saveAppData(PrintWriter output);
	public abstract Appointment loadAppData(Scanner inStream);
}
